package com.gitee.cirnochat.file.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.gitee.cirnochat.file.model.entity.EmojiPack;
import com.gitee.cirnochat.file.model.vo.req.EmojiPackItemUpdateRequest;
import com.gitee.cirnochat.file.model.vo.resp.EmojiPackItemCreateResponse;
import com.gitee.cirnochat.file.model.vo.resp.EmojiPackItemResponse;
import com.gitee.cirnochat.file.model.vo.resp.EmojiPackItemUpdateResponse;
import com.gitee.cirnochat.file.model.vo.resp.EmojiPackResponse;
import jakarta.validation.Valid;
import org.springframework.web.multipart.MultipartFile;

import java.util.List;

/**
* @author FlanChan
* @description 针对表【emoji_pack(表情包表)】的数据库操作Service
* @createDate 2025-07-01 16:07:04
*/
public interface EmojiPackService extends IService<EmojiPack> {

    List<EmojiPackResponse> listUserEmojiPacks(Long userId);

    EmojiPackItemCreateResponse uploadEmojiPack(MultipartFile file, Long userId);

    EmojiPackItemUpdateResponse deleteEmojiItem(Long emojiId, Long userId);

    EmojiPackItemUpdateResponse updateEmojiItem(@Valid EmojiPackItemUpdateRequest req, Long userId);

    List<EmojiPackItemResponse> listUserEmojis(Long userId);

    EmojiPackResponse getUserEmojiPack(Long userId);
}
